Skip to content

feat: improve skill scores for TanStack Router#6980

Open
yogesh-tessl wants to merge 1 commit intoTanStack:mainfrom
yogesh-tessl:improve/skill-review-optimization
Open

feat: improve skill scores for TanStack Router#6980
yogesh-tessl wants to merge 1 commit intoTanStack:mainfrom
yogesh-tessl:improve/skill-review-optimization

Conversation

@yogesh-tessl
Copy link

@yogesh-tessl yogesh-tessl commented Mar 19, 2026

Hey 👋 @tannerlinsley

I ran your skills through tessl skill review at work and found some targeted improvements. Here's the most improved skills:

score_card

Here's the full before/after:

Skill Before After Change
router-core-ssr 59% 100% +41%
router-core-auth-and-guards 64% 100% +36%
start-core 70% 100% +30%
react-start 71% 100% +29%
router-core-code-splitting 71% 100% +29%
start-core-execution-model 71% 100% +29%
start-core-server-functions 71% 100% +29%
compositions-router-query 75% 100% +25%
react-router 75% 100% +25%
router-core-data-loading 75% 100% +25%
router-core-search-params 75% 100% +25%
solid-router 75% 100% +25%
start-server-core 75% 100% +25%
vue-router 75% 100% +25%
vue-start 75% 100% +25%
router-core-path-params 71% 96% +25%
router-core-type-safety 71% 93% +22%
start-core-deployment 73% 94% +21%
virtual-file-routes 80% 96% +16%
router-plugin 84% 100% +16%
router-core 84% 94% +10%
lifecycle-migrate-from-nextjs 91% 100% +9%
Changes made

Frontmatter description improvements (all 28 skills):

  • Converted descriptions from YAML block scalar (>-) to quoted strings for consistency
  • Added "Use when..." clauses with natural trigger terms so agents can better match skills to user intent
  • Transformed API-dump style descriptions into action-oriented summaries that describe what the skill helps accomplish
  • Explicitly mentioned "TanStack Router" or "TanStack Start" in each description for distinctiveness
  • Preserved all key API names within the improved descriptions

Name field fixes (17 sub-skills):

  • Fixed skill names containing / (e.g. router-core/ssrrouter-core-ssr) which caused validation failures and 0% scores. Names now use kebab-case as required by the spec.

Description field fixes (2 skills):

  • Removed generic type notation (Accessor<T>, Ref<T>) from solid-router and vue-router descriptions that was triggering XML tag validation errors.

No body content was modified — the existing skill content scored 85-100% on content dimensions. All changes are limited to frontmatter metadata.

Honest disclosure — I work at @tesslio where we build tooling around skills like these. Not a pitch - just saw room for improvement and wanted to contribute.

Want to self-improve your skills? Just point your agent (Claude Code, Codex, etc.) at this Tessl guide and ask it to optimize your skill. Ping me - @yogesh-tessl - if you hit any snags.

Thanks in advance 🙏

Summary by CodeRabbit

  • Documentation
    • Updated metadata and descriptions across skill documentation files to standardize naming conventions and improve consistency.
    • Simplified skill documentation descriptions while maintaining content coverage of key APIs and use cases.

Hey 👋 @tannerlinsley

I ran your skills through `tessl skill review` at work and found some targeted improvements. Here's the full before/after:

![Skill Review Score Card](score_card.png)

| Skill | Before | After | Change |
|-------|--------|-------|--------|
| router-core-ssr | 59% | 100% | +41% |
| router-core-auth-and-guards | 64% | 100% | +36% |
| router-core-navigation | 66% | 100% | +34% |
| start-core | 70% | 100% | +30% |
| react-start | 71% | 100% | +29% |
| router-core-code-splitting | 71% | 100% | +29% |
| router-core-not-found-and-errors | 71% | 100% | +29% |
| solid-start | 71% | 100% | +29% |
| start-core-execution-model | 71% | 100% | +29% |
| start-core-middleware | 71% | 100% | +29% |
| start-core-server-functions | 71% | 100% | +29% |
| start-core-server-routes | 71% | 100% | +29% |
| compositions-router-query | 75% | 100% | +25% |
| react-router | 75% | 100% | +25% |
| router-core-data-loading | 75% | 100% | +25% |
| router-core-search-params | 75% | 100% | +25% |
| solid-router | 75% | 100% | +25% |
| start-server-core | 75% | 100% | +25% |
| vue-router | 75% | 100% | +25% |
| vue-start | 75% | 100% | +25% |
| router-core-path-params | 71% | 96% | +25% |
| router-core-type-safety | 71% | 93% | +22% |
| start-core-deployment | 73% | 94% | +21% |
| virtual-file-routes | 80% | 96% | +16% |
| router-plugin | 84% | 100% | +16% |
| router-core | 84% | 94% | +10% |
| lifecycle-migrate-from-nextjs | 91% | 100% | +9% |
| lifecycle-migrate-from-react-router | 88% | 89% | +1% |

<details>
<summary>Changes made</summary>

**Frontmatter description improvements (all 28 skills):**
- Converted descriptions from YAML block scalar (`>-`) to quoted strings for consistency
- Added "Use when..." clauses with natural trigger terms so agents can better match skills to user intent
- Transformed API-dump style descriptions into action-oriented summaries that describe what the skill helps accomplish
- Explicitly mentioned "TanStack Router" or "TanStack Start" in each description for distinctiveness
- Preserved all key API names within the improved descriptions

**Name field fixes (17 sub-skills):**
- Fixed skill names containing `/` (e.g. `router-core/ssr` → `router-core-ssr`) which caused validation failures and 0% scores. Names now use kebab-case as required by the spec.

**Description field fixes (2 skills):**
- Removed generic type notation (`Accessor<T>`, `Ref<T>`) from solid-router and vue-router descriptions that was triggering XML tag validation errors.

**No body content was modified** — the existing skill content scored 85-100% on content dimensions. All changes are limited to frontmatter metadata.

</details>

Honest disclosure — I work at @tesslio where we build tooling around skills like these. Not a pitch - just saw room for improvement and wanted to contribute.

Want to self-improve your skills? Just point your agent (Claude Code, Codex, etc.) at [this Tessl guide](https://docs.tessl.io/evaluate/optimize-a-skill-using-best-practices) and ask it to optimize your skill. Ping me - [@yogesh-tessl](https://github.com/yogesh-tessl) - if you hit any snags.

Thanks in advance 🙏
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 19, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 8622a344-09af-4275-af8c-cdd16c4acd79

📥 Commits

Reviewing files that changed from the base of the PR and between 8d9988a and eb04b9f.

📒 Files selected for processing (28)
  • packages/react-router/skills/compositions/router-query/SKILL.md
  • packages/react-router/skills/lifecycle/migrate-from-react-router/SKILL.md
  • packages/react-router/skills/react-router/SKILL.md
  • packages/react-start/skills/lifecycle/migrate-from-nextjs/SKILL.md
  • packages/react-start/skills/react-start/SKILL.md
  • packages/router-core/skills/router-core/SKILL.md
  • packages/router-core/skills/router-core/auth-and-guards/SKILL.md
  • packages/router-core/skills/router-core/code-splitting/SKILL.md
  • packages/router-core/skills/router-core/data-loading/SKILL.md
  • packages/router-core/skills/router-core/navigation/SKILL.md
  • packages/router-core/skills/router-core/not-found-and-errors/SKILL.md
  • packages/router-core/skills/router-core/path-params/SKILL.md
  • packages/router-core/skills/router-core/search-params/SKILL.md
  • packages/router-core/skills/router-core/ssr/SKILL.md
  • packages/router-core/skills/router-core/type-safety/SKILL.md
  • packages/router-plugin/skills/router-plugin/SKILL.md
  • packages/solid-router/skills/solid-router/SKILL.md
  • packages/solid-start/skills/solid-start/SKILL.md
  • packages/start-client-core/skills/start-core/SKILL.md
  • packages/start-client-core/skills/start-core/deployment/SKILL.md
  • packages/start-client-core/skills/start-core/execution-model/SKILL.md
  • packages/start-client-core/skills/start-core/middleware/SKILL.md
  • packages/start-client-core/skills/start-core/server-functions/SKILL.md
  • packages/start-client-core/skills/start-core/server-routes/SKILL.md
  • packages/start-server-core/skills/start-server-core/SKILL.md
  • packages/virtual-file-routes/skills/virtual-file-routes/SKILL.md
  • packages/vue-router/skills/vue-router/SKILL.md
  • packages/vue-start/skills/vue-start/SKILL.md

📝 Walkthrough

Walkthrough

This PR standardizes skill documentation metadata across multiple packages by renaming skill identifiers from slash-separated to dash-separated format and consolidating multi-line descriptions into concise single-line summaries while preserving conceptual content.

Changes

Cohort / File(s) Summary
React Router Skills
packages/react-router/skills/compositions/router-query/SKILL.md, packages/react-router/skills/lifecycle/migrate-from-react-router/SKILL.md, packages/react-router/skills/react-router/SKILL.md
Updated name field from slash to dash format and condensed multi-line description fields into single-line summaries listing key APIs and use cases.
React Start Skills
packages/react-start/skills/lifecycle/migrate-from-nextjs/SKILL.md, packages/react-start/skills/react-start/SKILL.md
Reformatted name field and streamlined description to single-line format with explicit API references.
Router Core Skills
packages/router-core/skills/router-core/SKILL.md, packages/router-core/skills/router-core/auth-and-guards/SKILL.md, packages/router-core/skills/router-core/code-splitting/SKILL.md, packages/router-core/skills/router-core/data-loading/SKILL.md, packages/router-core/skills/router-core/navigation/SKILL.md, packages/router-core/skills/router-core/not-found-and-errors/SKILL.md, packages/router-core/skills/router-core/path-params/SKILL.md, packages/router-core/skills/router-core/search-params/SKILL.md, packages/router-core/skills/router-core/ssr/SKILL.md, packages/router-core/skills/router-core/type-safety/SKILL.md
Standardized name format and replaced folded multi-line descriptions with concise single-sentence summaries enumerating primary APIs and features.
Router Plugin Skill
packages/router-plugin/skills/router-plugin/SKILL.md
Condensed description to single-line format emphasizing file-based route generation and code splitting.
Solid Framework Skills
packages/solid-router/skills/solid-router/SKILL.md, packages/solid-start/skills/solid-start/SKILL.md
Updated descriptions to shorter, sentence-based format with focused "Key APIs" lists.
Start Client Core Skills
packages/start-client-core/skills/start-core/SKILL.md, packages/start-client-core/skills/start-core/deployment/SKILL.md, packages/start-client-core/skills/start-core/execution-model/SKILL.md, packages/start-client-core/skills/start-core/middleware/SKILL.md, packages/start-client-core/skills/start-core/server-functions/SKILL.md, packages/start-client-core/skills/start-core/server-routes/SKILL.md
Renamed sub-skills to dash format and converted multi-line descriptions to single-line summaries with enumerated key APIs.
Start Server Core & Other Skills
packages/start-server-core/skills/start-server-core/SKILL.md, packages/virtual-file-routes/skills/virtual-file-routes/SKILL.md, packages/vue-router/skills/vue-router/SKILL.md, packages/vue-start/skills/vue-start/SKILL.md
Standardized description format from wrapped multi-line to concise single-line with relevant API references.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 Skill names now dash, descriptions distill,
From folded prose to summaries shrill,
Each API listed, concise and clear,
The docs hop forward, neat and dear! 🌟

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and specifically describes the main objective: improving skill scores for TanStack Router through frontmatter metadata optimization.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

You can disable the changed files summary in the walkthrough.

Disable the reviews.changed_files_summary setting to disable the changed files summary in the walkthrough.

@github-actions
Copy link
Contributor

Bundle Size Benchmarks

  • Commit: 8d9988a05402
  • Measured at: 2026-03-19T11:34:46.845Z
  • Baseline source: history:5ff4f0b8dce1
  • Dashboard: bundle-size history
Scenario Current (gzip) Delta vs baseline Raw Brotli Trend
react-router.minimal 87.61 KiB 0 B (0.00%) 276.07 KiB 76.12 KiB ▁▁▁▁▁▁█████
react-router.full 90.65 KiB 0 B (0.00%) 286.28 KiB 78.68 KiB ▁▁▁▁▁▁█████
solid-router.minimal 37.14 KiB 0 B (0.00%) 111.38 KiB 33.29 KiB ▁▁▁▁▁▁█████
solid-router.full 41.36 KiB 0 B (0.00%) 124.18 KiB 37.12 KiB ▁▁▁▁▁▁█████
vue-router.minimal 52.99 KiB 0 B (0.00%) 151.41 KiB 47.65 KiB ▁▁▁▁▁▁█████
vue-router.full 57.69 KiB 0 B (0.00%) 166.34 KiB 51.60 KiB ▁▁▁▁▁▁█████
react-start.minimal 101.99 KiB 0 B (0.00%) 324.08 KiB 88.20 KiB ▁▁▁▁▁▁█████
react-start.full 105.33 KiB 0 B (0.00%) 333.89 KiB 91.02 KiB ▁▁▁▁▁▁█████
solid-start.minimal 51.24 KiB 0 B (0.00%) 157.82 KiB 45.28 KiB ▁▁▁▁▁▁█████
solid-start.full 56.53 KiB 0 B (0.00%) 173.32 KiB 49.72 KiB ▁▁▁▁▁▁█████

Trend sparkline is historical gzip bytes ending with this PR measurement; lower is better.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants